#pragma once
#include "PluginImageCurator\IImageCuratorFn.h"
#include "PluginImageCurator\IImageCuratorFnDef.h"
#include "PluginImageCurator\IImageCuratorFnCall.h"


class SumVal :	public IImageCuratorFnCall
{
public:
	SumVal(void);
	~SumVal(void);

	virtual bool		MXSTDMETHOD Invoke(IImageCuratorFn *fn, bool DebugMode, bool DisplayMsg);

	virtual bool		MXSTDMETHOD IsValid() { return true; }

	virtual long		MXSTDMETHOD DestroyPtr(void);
	virtual long		MXSTDMETHOD DuplicatePtr(void);
	virtual void *		MXSTDMETHOD Dynamic_cast(const GUID IId);
	virtual const GUID  MXSTDMETHOD GetInterfaceGUID(void)  { return IImageCuratorFnCallIID::Guid(); }				//Library Interface GUID implemented by Plugin$MxName$.dll
	virtual const char *MXSTDMETHOD GetInterfaceName(void) { return IImageCuratorFnCallIID::Name(); }				//Library Interface Name implemented by Plugin$MxName$.dll

private:
	static int			MXSTDMETHOD Convert(int valA, int ValB);

private: 

	long _refCnt;
};

